home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / make / icmake-6.000 / icmake-6 / icmake / un / printvar.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-02-08  |  589 b   |  30 lines

  1. #include "icmun.h"
  2.  
  3. static char
  4.     buffer [10] = "[";
  5.  
  6. char *printvar (INT16 index)
  7. {
  8.     register INT16       
  9.         i;
  10.  
  11.     if ((UNS16)index < 0x8000 )            /* pure variable number */
  12.         strcpy(buffer + 1, hexstring (index, 4));
  13.     else
  14.     {
  15.         i = index - 0xc000;            /* correct for BP pos */
  16.  
  17.         strcpy (buffer + 1, "bp");
  18.         if (i < 0)
  19.         {
  20.             strcat (buffer, "-");
  21.             i = -i;
  22.         }
  23.         else
  24.             strcat (buffer, "+");
  25.         strcat (buffer, hexstring (i, 4));
  26.     }
  27.     strcat (buffer, "]");
  28.     return (buffer);
  29. }
  30.